﻿using DFGK_WMS.Model.DTO;
using DFGK_WMS.Model.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DFGK_WMS.IRepository
{
    public interface ITInventoryQuery : IBaseRepository<TInventory>
    {
        /// <summary>
        /// 盘点查询
        /// </summary>
        /// <param name="totalCount"></param>
        /// <param name="PalletBarcode"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        List<TInventory> GetInventoryQuery(out int totalCount, string PalletBarcode, int pageIndex, int pageSize);


        /// <summary>
        /// 根据盘点计划ID查询盘点计划
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        TStocktakingPlan GetTStocktakingPlanById(long id);


        /// <summary>
        /// 根据存放库位带出库区物资数量
        /// </summary>
        /// <param name="areaId"></param>
        /// <returns></returns>
        List<TInventory> GetInventoryNumByAreaId(int areaId);
        bool GetTInventorywuliao(List<TInventorymaterialdetailsdto> pandianDanhaodto, long planId, string planNumber);
        /// <summary>
        /// 根据盘点单号修改状态
        /// </summary>
        /// <param name="Ordersn"></param>
        /// <param name="message"></param>
        /// <returns></returns>
        bool Getpandianxiugai(string Ordersn, out string message);
        /// <summary>
        /// 根据pda上修改监盘人id，和提交人的id
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>

        bool UpdatePandianlist(TInventorymaterialdetailsdto dto);
        /// <summary>
        /// 显示盘点列表所有的盘点的数据
        /// </summary>
        /// <returns></returns>
        object GetPdaxianshishuju(string? name, int pageindex, int pagesize, out int totalt);
    }
}
